Nowadays, consumer electronic devices, such as televisions, PCs, mobile phones and the like, comprise system-on-chip (SoC) multiprocessors. The benefits of SoCs are their high performance, large flexibility and low cost. Furthermore, both the impact of programmable hardware on the total silicon area and the power consumption in the consumer electronic device can be reduced by employing a SoC.
The basic problem of SoCs is the communication between the processing units on the SoC and one or more external resources, like external memories or similar units. More particularly, a resource must be shared between several processing units or agents implemented on the SoC. A common concern is that the resource utilization must be high. Thereby, the overhead of using the resource may depend on the sequence of requests.
One approach is to split the requests sent by the processing units into at least two categories and assign the highest priority to one of these categories. For instance, the requests can be split into low latency traffic requests on the one hand and constant bandwidth traffic requests on the other hand. Normally, the low latency traffic requests comprise the higher priority. To prevent the lower priority traffic requests from starvation, the low latency requests must be limited. According to prior art, the processing of low-latency requests are limited based on their own bandwidth usage.